package com.ailanyin.modules.system.service;

import com.ailanyin.common.poi.model.ExcelSetting;
import com.ailanyin.modules.system.domain.SysExcelSetting;

import java.util.List;

/**
 * Excel导出设置Service接口
 *
 * @author ailanyin
 * @date 2022-10-25
 */
public interface ISysExcelSettingService {

    /**
     * 查询Excel导出设置
     *
     * @param id Excel导出设置主键
     * @return Excel导出设置
     */
    SysExcelSetting selectSysExcelSettingById(Long id);

    /**
     * 查询Excel导出设置列表
     *
     * @param className 类名
     * @return Excel导出设置集合
     */
    List<ExcelSetting> selectListByClassName(String className);

    /**
     * 新增Excel导出设置
     *
     * @param clazz     要导出的类
     * @param className 保存的类名
     */
    void insertSysExcelSetting(Class clazz, String className);

    /**
     * 修改Excel导出设置
     *
     * @param sysExcelSetting Excel导出设置
     * @return 结果
     */
    int updateSysExcelSetting(SysExcelSetting sysExcelSetting);

    /**
     * 批量删除Excel导出设置
     *
     * @param ids 需要删除的Excel导出设置主键集合
     * @return 结果
     */
    int deleteSysExcelSettingByIds(List<Long> ids);

    /**
     * 删除Excel导出设置信息
     *
     * @param id Excel导出设置主键
     * @return 结果
     */
    int deleteSysExcelSettingById(Long id);
}
